import axios from 'axios';
import type { AxiosInstance } from 'axios';

const request: AxiosInstance = axios.create({
  baseURL: import.meta.env.VITE_APP_BASE_API,

  timeout: 200000, // 请求超时的毫秒数，请求时间超过指定值，则请求会被中断
  headers: {
    "Content-Type": "application/json; charset=UTF-8",
  },
});

// 请求拦截器
request.interceptors.request.use(config => {
  // 因为是跟 app 联调，所以 token是每个接口都要传，或者看后期会不会修改；使用 cookies 作临时 token 存储
  return config;
}, error => {
  // 出现异常, catch可捕获到
  return Promise.reject(error);
})

// 响应拦截器
request.interceptors.response.use(response => {
  // 因为考虑到这个项目是各种零碎页面拼凑，所以对参数不做任何处理
  // const res = response.data;
  // if (res.code === 200) {
  //   return Promise.resolve(response);
  // }
  return Promise.resolve(response);
}, error => {
  // 处理响应错误
  return Promise.reject(error);
});
export default request; // 导出 axios 对象
